ಪೈಥಾನ್ನ `keyword` ಮಾಡ್ಯೂಲ್ಗೆ ಸಮಗ್ರ, ಆಳವಾದ ಮಾರ್ಗದರ್ಶಿ. ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್, ಕೋಡ್ ಜನರೇಟ್ ಮತ್ತು ವ್ಯಾಲಿಡೇಶನ್ಗಾಗಿ ಕಾಯ್ದಿರಿಸಿದ ಕೀವರ್ಡ್ಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡುವುದು, ಪರಿಶೀಲಿಸುವುದು ಮತ್ತು ನಿರ್ವಹಿಸುವುದು ಹೇಗೆಂದು ತಿಳಿಯಿರಿ.
ಪೈಥಾನ್ನ `keyword` ಮಾಡ್ಯೂಲ್: ಕಾಯ್ದಿರಿಸಿದ ಪದಗಳಿಗೆ ಅಂತಿಮ ಮಾರ್ಗದರ್ಶಿ
ಯಾವುದೇ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ವಿಶಾಲ ವಿಶ್ವದಲ್ಲಿ, ಕೆಲವು ಪದಗಳು ಪವಿತ್ರವಾಗಿವೆ. ಅವು ರಚನಾತ್ಮಕ ಆಧಾರಸ್ತಂಭಗಳು, ಸಂಪೂರ್ಣ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ಒಟ್ಟಿಗೆ ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳುವ ವ್ಯಾಕರಣದ ಅಂಟು. ಪೈಥಾನ್ನಲ್ಲಿ, ಇವುಗಳನ್ನು ಕೀವರ್ಡ್ಗಳು ಅಥವಾ ಕಾಯ್ದಿರಿಸಿದ ಪದಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಅವುಗಳ ಉದ್ದೇಶಿತ ಬಳಕೆಯ ಹೊರತಾಗಿ ಬೇರೆ ಯಾವುದಕ್ಕಾದರೂ, ಉದಾಹರಣೆಗೆ ವೇರಿಯಬಲ್ ಹೆಸರಿನಂತೆ ಬಳಸಲು ಪ್ರಯತ್ನಿಸಿದರೆ, ತಕ್ಷಣವೇ ಮತ್ತು ರಾಜಿರಹಿತ `SyntaxError` ಫಲಿತಾಂಶ ನೀಡುತ್ತದೆ. ಆದರೆ ಅವುಗಳನ್ನು ಹೇಗೆ ಟ್ರ್ಯಾಕ್ ಮಾಡುತ್ತೀರಿ? ನೀವು ರಚಿಸುವ ಕೋಡ್ ಅಥವಾ ನೀವು ಸ್ವೀಕರಿಸುವ ಬಳಕೆದಾರರ ಇನ್ಪುಟ್ ಆಕಸ್ಮಿಕವಾಗಿ ಈ ಪವಿತ್ರ ನೆಲವನ್ನು ತುಳಿಯುವುದಿಲ್ಲ ಎಂದು ಹೇಗೆ ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುತ್ತೀರಿ? ಉತ್ತರವು ಪೈಥಾನ್ನ ಪ್ರಮಾಣಿತ ಲೈಬ್ರರಿಯ ಸರಳ, ಸೊಗಸಾದ ಮತ್ತು ಶಕ್ತಿಶಾಲಿ ಭಾಗದಲ್ಲಿದೆ: ದ keyword
ಮಾಡ್ಯೂಲ್.
ಈ ಸಮಗ್ರ ಮಾರ್ಗದರ್ಶಿ keyword
ಮಾಡ್ಯೂಲ್ಗೆ ಆಳವಾದ ಪರಿಶೀಲನೆಗೆ ನಿಮ್ಮನ್ನು ಕರೆದೊಯ್ಯುತ್ತದೆ. ನೀವು ಪೈಥಾನ್ ಸಿಂಟ್ಯಾಕ್ಸ್ ನಿಯಮಗಳನ್ನು ಕಲಿಯುತ್ತಿರುವ ಹೊಸಬರಾಗಲಿ, ದೃಢವಾದ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ನಿರ್ಮಿಸುವ ಮಧ್ಯಂತರ ಡೆವಲಪರ್ ಆಗಿರಲಿ, ಅಥವಾ ಫ್ರೇಮ್ವರ್ಕ್ಗಳು ಮತ್ತು ಕೋಡ್ ಜನರೇಟರ್ಗಳಲ್ಲಿ ಕೆಲಸ ಮಾಡುವ ಸುಧಾರಿತ ಪ್ರೋಗ್ರಾಮರ್ ಆಗಿರಲಿ, ಈ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಕರಗತ ಮಾಡಿಕೊಳ್ಳುವುದು ಸ್ವಚ್ಛವಾದ, ಸುರಕ್ಷಿತವಾದ ಮತ್ತು ಹೆಚ್ಚು ಬುದ್ಧಿವಂತ ಪೈಥಾನ್ ಕೋಡ್ ಬರೆಯುವಲ್ಲಿ ಒಂದು ಪ್ರಮುಖ ಹೆಜ್ಜೆಯಾಗಿದೆ.
ಪೈಥಾನ್ನಲ್ಲಿ ಕೀವರ್ಡ್ಗಳು ನಿಖರವಾಗಿ ಯಾವುವು?
ಪೈಥಾನ್ ಸಿಂಟ್ಯಾಕ್ಸ್ನ ಅಡಿಪಾಯ
ಅದರ ಮೂಲದಲ್ಲಿ, ಕೀವರ್ಡ್ ಎಂದರೆ ಪೈಥಾನ್ ಇಂಟರ್ಪ್ರಿಟರ್ಗೆ ವಿಶೇಷ, ಪೂರ್ವನಿರ್ಧರಿತ ಅರ್ಥವನ್ನು ಹೊಂದಿರುವ ಪದ. ಈ ಪದಗಳನ್ನು ನಿಮ್ಮ ಹೇಳಿಕೆಗಳು ಮತ್ತು ಕೋಡ್ ಬ್ಲಾಕ್ಗಳ ರಚನೆಯನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲು ಭಾಷೆಯಿಂದ ಕಾಯ್ದಿರಿಸಲಾಗಿದೆ. ಅವುಗಳನ್ನು ಪೈಥಾನ್ ಭಾಷೆಯ ಕ್ರಿಯಾಪದಗಳು ಮತ್ತು ಸಂಯೋಗಗಳೆಂದು ಭಾವಿಸಿ. ಅವು ಇಂಟರ್ಪ್ರಿಟರ್ಗೆ ಏನು ಮಾಡಬೇಕು, ಹೇಗೆ ಕವಲೊಡೆಯಬೇಕು, ಯಾವಾಗ ಲೂಪ್ ಮಾಡಬೇಕು ಮತ್ತು ರಚನೆಗಳನ್ನು ಹೇಗೆ ವ್ಯಾಖ್ಯಾನಿಸಬೇಕು ಎಂದು ಹೇಳುತ್ತವೆ.
ಅವು ಈ ವಿಶೇಷ ಪಾತ್ರವನ್ನು ಹೊಂದಿರುವುದರಿಂದ, ನೀವು ಅವುಗಳನ್ನು ಗುರುತಿಸುವಿಕೆಗಳಾಗಿ ಬಳಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ಗುರುತಿಸುವಿಕೆ ಎಂದರೆ ನೀವು ವೇರಿಯಬಲ್, ಫಂಕ್ಷನ್, ಕ್ಲಾಸ್, ಮಾಡ್ಯೂಲ್ ಅಥವಾ ಯಾವುದೇ ಇತರ ಆಬ್ಜೆಕ್ಟ್ಗೆ ನೀಡುವ ಹೆಸರು. ನೀವು ಕೀವರ್ಡ್ಗೆ ಮೌಲ್ಯವನ್ನು ನಿಯೋಜಿಸಲು ಪ್ರಯತ್ನಿಸಿದಾಗ, ಕೋಡ್ ರನ್ ಆಗುವ ಮೊದಲೇ ಪೈಥಾನ್ನ ಪಾರ್ಸರ್ ನಿಮ್ಮನ್ನು ನಿಲ್ಲಿಸುತ್ತದೆ:
ಉದಾಹರಣೆಗೆ, `for` ಅನ್ನು ವೇರಿಯಬಲ್ ಹೆಸರಾಗಿ ಬಳಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದೆ:
# ಈ ಕೋಡ್ ರನ್ ಆಗುವುದಿಲ್ಲ
for = "loop variable"
# ಫಲಿತಾಂಶ -> SyntaxError: invalid syntax
ಈ ತಕ್ಷಣದ ಪ್ರತಿಕ್ರಿಯೆ ಒಂದು ಒಳ್ಳೆಯ ವಿಷಯ. ಇದು ಭಾಷೆಯ ರಚನೆಯ ಸಮಗ್ರತೆಯನ್ನು ರಕ್ಷಿಸುತ್ತದೆ. ಈ ವಿಶೇಷ ಪದಗಳ ಪಟ್ಟಿಯಲ್ಲಿ if
, else
, while
, for
, def
, class
, import
, ಮತ್ತು return
ನಂತಹ ಪರಿಚಿತ ಮುಖಗಳು ಸೇರಿವೆ.
ಒಂದು ನಿರ್ಣಾಯಕ ವ್ಯತ್ಯಾಸ: ಕೀವರ್ಡ್ಗಳು ವರ್ಸಸ್ ಬಿಲ್ಟ್-ಇನ್ ಫಂಕ್ಷನ್ಗಳು
ಪೈಥಾನ್ಗೆ ಹೊಸ ಡೆವಲಪರ್ಗಳಿಗೆ ಸಾಮಾನ್ಯ ಗೊಂದಲದ ಅಂಶವೆಂದರೆ ಕೀವರ್ಡ್ಗಳು ಮತ್ತು ಬಿಲ್ಟ್-ಇನ್ ಫಂಕ್ಷನ್ಗಳ ನಡುವಿನ ವ್ಯತ್ಯಾಸ. ಎರಡೂ ಯಾವುದೇ ಇಂಪೋರ್ಟ್ಗಳಿಲ್ಲದೆ ಸುಲಭವಾಗಿ ಲಭ್ಯವಿದ್ದರೂ, ಅವುಗಳ ಸ್ವರೂಪವು ಮೂಲಭೂತವಾಗಿ ವಿಭಿನ್ನವಾಗಿದೆ.
- ಕೀವರ್ಡ್ಗಳು: ಭಾಷೆಯ ಸಿಂಟ್ಯಾಕ್ಸ್ನ ಒಂದು ಭಾಗವಾಗಿವೆ. ಅವು ಬದಲಾಯಿಸಲಾಗದವು ಮತ್ತು ಮರುಹಂಚಿಕೆ ಮಾಡಲಾಗುವುದಿಲ್ಲ. ಅವು ವ್ಯಾಕರಣವಾಗಿವೆ.
- ಬಿಲ್ಟ್-ಇನ್ ಫಂಕ್ಷನ್ಗಳು:
print()
,len()
,str()
, ಮತ್ತುlist()
ನಂತಹ ಗ್ಲೋಬಲ್ ನೇಮ್ಸ್ಪೇಸ್ನಲ್ಲಿ ಪೂರ್ವ-ಲೋಡ್ ಮಾಡಲಾದ ಫಂಕ್ಷನ್ಗಳು. ಇದು ಕೆಟ್ಟ ಅಭ್ಯಾಸವಾಗಿದ್ದರೂ, ಅವುಗಳನ್ನು ಮರುಹಂಚಿಕೆ ಮಾಡಬಹುದು. ಅವು ಪ್ರಮಾಣಿತ ಶಬ್ದಕೋಶದ ಭಾಗವಾಗಿವೆ, ಆದರೆ ಮುಖ್ಯ ವ್ಯಾಕರಣವಲ್ಲ.
ಉದಾಹರಣೆಯೊಂದಿಗೆ ವಿವರಿಸೋಣ:
# ಕೀವರ್ಡ್ ಅನ್ನು ಮರುಹಂಚಿಕೆ ಮಾಡಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದೆ (ವಿಫಲವಾಗಿದೆ)
try = "attempt"
# ಫಲಿತಾಂಶ -> SyntaxError: invalid syntax
# ಬಿಲ್ಟ್-ಇನ್ ಫಂಕ್ಷನ್ ಅನ್ನು ಮರುಹಂಚಿಕೆ ಮಾಡುವುದು (ಕೆಲಸ ಮಾಡುತ್ತದೆ, ಆದರೆ ಇದು ಬಹಳ ಕೆಟ್ಟ ಕಲ್ಪನೆ!)
print("ಇದು ಮೂಲ ಪ್ರಿಂಟ್ ಫಂಕ್ಷನ್ ಆಗಿದೆ")
print = "ನಾನು ಇನ್ನು ಮುಂದೆ ಫಂಕ್ಷನ್ ಅಲ್ಲ"
# ಮುಂದಿನ ಸಾಲು TypeError ಅನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ ಏಕೆಂದರೆ 'print' ಈಗ ಒಂದು ಸ್ಟ್ರಿಂಗ್ ಆಗಿದೆ
# print("ಇದು ವಿಫಲಗೊಳ್ಳುತ್ತದೆ")
ಈ ವ್ಯತ್ಯಾಸವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಮುಖ್ಯ. ದ keyword
ಮಾಡ್ಯೂಲ್ ಮೊದಲ ವರ್ಗದೊಂದಿಗೆ ಪ್ರತ್ಯೇಕವಾಗಿ ವ್ಯವಹರಿಸುತ್ತದೆ: ಪೈಥಾನ್ ಭಾಷೆಯ ನಿಜವಾದ, ಮರುಹಂಚಿಕೆ ಮಾಡಲಾಗದ ಕಾಯ್ದಿರಿಸಿದ ಪದಗಳು.
`keyword` ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಪರಿಚಯಿಸುತ್ತಿದೆ: ನಿಮ್ಮ ಅತ್ಯಗತ್ಯ ಟೂಲ್ಕಿಟ್
ಕೀವರ್ಡ್ಗಳು ಏನೆಂದು ನಾವು ಸ್ಥಾಪಿಸಿರುವುದರಿಂದ, ಅವುಗಳನ್ನು ನಿರ್ವಹಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಉಪಕರಣವನ್ನು ಪರಿಚಯಿಸೋಣ. ದ keyword
ಮಾಡ್ಯೂಲ್ ಪೈಥಾನ್ ಪ್ರಮಾಣಿತ ಲೈಬ್ರರಿಯ ಒಂದು ಅಂತರ್ಗತ ಭಾಗವಾಗಿದೆ, ಅಂದರೆ ನೀವು pip
ಮೂಲಕ ಏನನ್ನೂ ಇನ್ಸ್ಟಾಲ್ ಮಾಡದೆಯೇ ಅದನ್ನು ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ಬಳಸಬಹುದು. ಒಂದು ಸರಳ import keyword
ಸಾಕು.
ಮಾಡ್ಯೂಲ್ ಎರಡು ಪ್ರಾಥಮಿಕ, ಶಕ್ತಿಶಾಲಿ ಕಾರ್ಯಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ:
- ಪಟ್ಟಿ ಮಾಡುವುದು: ನೀವು ಪ್ರಸ್ತುತ ರನ್ ಮಾಡುತ್ತಿರುವ ಪೈಥಾನ್ ಆವೃತ್ತಿಗೆ ಎಲ್ಲಾ ಕೀವರ್ಡ್ಗಳ ಸಂಪೂರ್ಣ, ನವೀಕೃತ ಪಟ್ಟಿಯನ್ನು ಇದು ಒದಗಿಸುತ್ತದೆ.
- ಪರಿಶೀಲಿಸುವುದು: ಯಾವುದೇ ನಿರ್ದಿಷ್ಟ ಸ್ಟ್ರಿಂಗ್ ಕೀವರ್ಡ್ ಆಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಲು ವೇಗವಾದ ಮತ್ತು ವಿಶ್ವಾಸಾರ್ಹ ಮಾರ್ಗವನ್ನು ಇದು ಒದಗಿಸುತ್ತದೆ.
ಈ ಸರಳ ಸಾಮರ್ಥ್ಯಗಳು, ಲಿಂಟರ್ಗಳನ್ನು ನಿರ್ಮಿಸುವುದರಿಂದ ಹಿಡಿದು ಡೈನಾಮಿಕ್ ಮತ್ತು ಸುರಕ್ಷಿತ ವ್ಯವಸ್ಥೆಗಳನ್ನು ರಚಿಸುವವರೆಗೆ, ವ್ಯಾಪಕ ಶ್ರೇಣಿಯ ಸುಧಾರಿತ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಆಧಾರವಾಗಿವೆ.
`keyword` ಮಾಡ್ಯೂಲ್ನ ಪ್ರಮುಖ ಕಾರ್ಯಗಳು: ಒಂದು ಪ್ರಾಯೋಗಿಕ ಮಾರ್ಗದರ್ಶಿ
ದ keyword
ಮಾಡ್ಯೂಲ್ ಸುಂದರವಾಗಿ ಸರಳವಾಗಿದೆ, ಅದರ ಮುಖ್ಯ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಕೆಲವೇ ಗುಣಲಕ್ಷಣಗಳು ಮತ್ತು ಕಾರ್ಯಗಳ ಮೂಲಕ ತೆರೆದಿಡುತ್ತದೆ. ಪ್ರಾಯೋಗಿಕ ಉದಾಹರಣೆಗಳೊಂದಿಗೆ ಪ್ರತಿಯೊಂದನ್ನೂ ಅನ್ವೇಷಿಸೋಣ.
1. `keyword.kwlist` ನೊಂದಿಗೆ ಎಲ್ಲಾ ಕೀವರ್ಡ್ಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡುವುದು
ಅತ್ಯಂತ ನೇರವಾದ ವೈಶಿಷ್ಟ್ಯವೆಂದರೆ keyword.kwlist
. ಇದು ಒಂದು ಫಂಕ್ಷನ್ ಅಲ್ಲ, ಆದರೆ ಪ್ರಸ್ತುತ ಪೈಥಾನ್ ಇಂಟರ್ಪ್ರಿಟರ್ನಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ಎಲ್ಲಾ ಕೀವರ್ಡ್ಗಳ ಅನುಕ್ರಮವನ್ನು (ನಿರ್ದಿಷ್ಟವಾಗಿ, ಸ್ಟ್ರಿಂಗ್ಗಳ ಪಟ್ಟಿ) ಹೊಂದಿರುವ ಒಂದು ಗುಣಲಕ್ಷಣವಾಗಿದೆ. ಇದು ನಿಮ್ಮ ಸತ್ಯದ ನಿರ್ಣಾಯಕ ಮೂಲವಾಗಿದೆ.
ಅದನ್ನು ಹೇಗೆ ಬಳಸುವುದು:
import keyword
# ಎಲ್ಲಾ ಕೀವರ್ಡ್ಗಳ ಪಟ್ಟಿಯನ್ನು ಪಡೆಯಿರಿ
all_keywords = keyword.kwlist
print(f"ಪೈಥಾನ್ನ ಈ ಆವೃತ್ತಿಯಲ್ಲಿ {len(all_keywords)} ಕೀವರ್ಡ್ಗಳಿವೆ.")
print("ಇಲ್ಲಿ ಅವುಗಳು:")
print(all_keywords)
ಈ ಕೋಡ್ ಅನ್ನು ರನ್ ಮಾಡುವುದರಿಂದ ಕೀವರ್ಡ್ಗಳ ಸಂಖ್ಯೆ ಮತ್ತು ಪಟ್ಟಿಯನ್ನು ಮುದ್ರಿಸುತ್ತದೆ. ನೀವು 'False'
, 'None'
, 'True'
, 'and'
, 'as'
, 'assert'
, 'async'
, 'await'
ಮುಂತಾದ ಪದಗಳನ್ನು ನೋಡುತ್ತೀರಿ. ಈ ಪಟ್ಟಿಯು ನಿಮ್ಮ ನಿರ್ದಿಷ್ಟ ಪೈಥಾನ್ ಆವೃತ್ತಿಗೆ ಭಾಷೆಯ ಕಾಯ್ದಿರಿಸಿದ ಶಬ್ದಕೋಶದ ಸ್ನ್ಯಾಪ್ಶಾಟ್ ಆಗಿದೆ.
ಇದು ಏಕೆ ಉಪಯುಕ್ತವಾಗಿದೆ? ಇದು ನಿಮ್ಮ ಪ್ರೋಗ್ರಾಂ ಭಾಷೆಯ ಸಿಂಟ್ಯಾಕ್ಸ್ ಬಗ್ಗೆ ತಿಳಿದುಕೊಳ್ಳಲು ಆತ್ಮಾವಲೋಕನ ಮಾರ್ಗವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಪೈಥಾನ್ ಕೋಡ್ ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಲು, ವಿಶ್ಲೇಷಿಸಲು ಅಥವಾ ಜನರೇಟ್ ಮಾಡಲು ಅಗತ್ಯವಿರುವ ಪರಿಕರಗಳಿಗೆ ಇದು ಅಮೂಲ್ಯವಾಗಿದೆ.
2. `keyword.iskeyword()` ನೊಂದಿಗೆ ಕೀವರ್ಡ್ಗಳಿಗಾಗಿ ಪರಿಶೀಲಿಸುವುದು
ಪೂರ್ಣ ಪಟ್ಟಿಯನ್ನು ಹೊಂದಿರುವುದು ಉತ್ತಮವಾಗಿದ್ದರೂ, ಒಂದು ಪದವು ಕೀವರ್ಡ್ ಆಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಲು ಅದರ ಮೂಲಕ ಪುನರಾವರ್ತಿಸುವುದು ಅಸಮರ್ಥವಾಗಿದೆ. ಈ ಕಾರ್ಯಕ್ಕಾಗಿ, ಮಾಡ್ಯೂಲ್ ಹೆಚ್ಚು ಆಪ್ಟಿಮೈಸ್ಡ್ ಕಾರ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ keyword.iskeyword(s)
.
ಈ ಕಾರ್ಯವು ಒಂದು ಆರ್ಗ್ಯುಮೆಂಟ್, ಸ್ಟ್ರಿಂಗ್ s
ಅನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಅದು ಪೈಥಾನ್ ಕೀವರ್ಡ್ ಆಗಿದ್ದರೆ True
ಅನ್ನು ಮತ್ತು ಇಲ್ಲದಿದ್ದರೆ False
ಅನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ. ಇದು ಹ್ಯಾಶ್-ಆಧಾರಿತ ಲುಕಪ್ ಅನ್ನು ಬಳಸುವುದರಿಂದ ಪರಿಶೀಲನೆಯು ಅತ್ಯಂತ ವೇಗವಾಗಿರುತ್ತದೆ.
ಅದನ್ನು ಹೇಗೆ ಬಳಸುವುದು:
import keyword
# ಕೆಲವು ಸಂಭಾವ್ಯ ಕೀವರ್ಡ್ಗಳನ್ನು ಪರಿಶೀಲಿಸಿ
print(f"'for' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.iskeyword('for')}")
print(f"'if' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.iskeyword('if')}")
print(f"'True' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.iskeyword('True')}")
# ಕೆಲವು ಕೀವರ್ಡ್ ಅಲ್ಲದವುಗಳನ್ನು ಪರಿಶೀಲಿಸಿ
print(f"'variable' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.iskeyword('variable')}")
print(f"'true' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.iskeyword('true')}") # ಕೇಸ್ ಸೆನ್ಸಿಟಿವಿಟಿ ಗಮನಿಸಿ
print(f"'Print' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.iskeyword('Print')}")
ನಿರೀಕ್ಷಿತ ಔಟ್ಪುಟ್:
'for' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: True
'if' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: True
'True' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: True
'variable' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: False
'true' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: False
'Print' ಒಂದು ಕೀವರ್ಡ್ ಆಗಿದೆ: False
ಈ ಉದಾಹರಣೆಯಿಂದ ಒಂದು ಪ್ರಮುಖ ಅಂಶವೆಂದರೆ ಪೈಥಾನ್ ಕೀವರ್ಡ್ಗಳು ಕೇಸ್-ಸೆನ್ಸಿಟಿವ್ ಆಗಿವೆ. True
, False
, ಮತ್ತು None
ಕೀವರ್ಡ್ಗಳಾಗಿವೆ, ಆದರೆ true
, false
, ಮತ್ತು none
ಅಲ್ಲ. keyword.iskeyword()
ಈ ನಿರ್ಣಾಯಕ ವಿವರವನ್ನು ಸರಿಯಾಗಿ ಪ್ರತಿಬಿಂಬಿಸುತ್ತದೆ.
3. `keyword.issoftkeyword()` ನೊಂದಿಗೆ ಸಾಫ್ಟ್ ಕೀವರ್ಡ್ಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು
ಪೈಥಾನ್ ವಿಕಸನಗೊಳ್ಳುತ್ತಿದ್ದಂತೆ, ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸೇರಿಸಲಾಗುತ್ತದೆ. ಹೊಸ ಕೀವರ್ಡ್ಗಳನ್ನು ವೇರಿಯಬಲ್ ಹೆಸರುಗಳಾಗಿ ಬಳಸಿದ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಕೋಡ್ ಅನ್ನು ಮುರಿಯುವುದನ್ನು ತಪ್ಪಿಸಲು, ಪೈಥಾನ್ ಕೆಲವೊಮ್ಮೆ "ಸಾಫ್ಟ್ ಕೀವರ್ಡ್ಗಳು" ಅಥವಾ "ಪ್ರಸಂಗ-ಸಂವೇದಿ ಕೀವರ್ಡ್ಗಳನ್ನು" ಪರಿಚಯಿಸುತ್ತದೆ. ಇವುಗಳು ನಿರ್ದಿಷ್ಟ ಸಂದರ್ಭಗಳಲ್ಲಿ ಮಾತ್ರ ಕೀವರ್ಡ್ಗಳಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಪದಗಳಾಗಿವೆ. ಅತ್ಯಂತ ಪ್ರಮುಖ ಉದಾಹರಣೆಗಳೆಂದರೆ match
, case
, ಮತ್ತು _
(ವೈಲ್ಡ್ಕಾರ್ಡ್), ಇವುಗಳನ್ನು ಪೈಥಾನ್ 3.10 ರಲ್ಲಿ ರಚನಾತ್ಮಕ ಪ್ಯಾಟರ್ನ್ ಮ್ಯಾಚಿಂಗ್ಗಾಗಿ ಪರಿಚಯಿಸಲಾಗಿದೆ.
ಇವುಗಳನ್ನು ನಿರ್ದಿಷ್ಟವಾಗಿ ಗುರುತಿಸಲು, ಪೈಥಾನ್ 3.9 keyword.issoftkeyword(s)
ಕಾರ್ಯವನ್ನು ಪರಿಚಯಿಸಿದೆ.
ಪೈಥಾನ್ ಆವೃತ್ತಿಗಳ ಬಗ್ಗೆ ಒಂದು ಟಿಪ್ಪಣಿ: match
ಮತ್ತು case
match
ಬ್ಲಾಕ್ನೊಳಗೆ ಕೀವರ್ಡ್ಗಳಾಗಿ ವರ್ತಿಸಿದರೂ, ಅವುಗಳನ್ನು ಹಿಂದುಳಿದ ಹೊಂದಾಣಿಕೆಯನ್ನು ಕಾಪಾಡಿಕೊಳ್ಳುವ ಮೂಲಕ ಬೇರೆಡೆ ವೇರಿಯಬಲ್ ಅಥವಾ ಫಂಕ್ಷನ್ ಹೆಸರುಗಳಾಗಿ ಬಳಸಬಹುದು. ದ keyword
ಮಾಡ್ಯೂಲ್ ಈ ವ್ಯತ್ಯಾಸವನ್ನು ನಿರ್ವಹಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
ಅದನ್ನು ಹೇಗೆ ಬಳಸುವುದು:
import keyword
import sys
# ಈ ಕಾರ್ಯವನ್ನು ಪೈಥಾನ್ 3.9 ರಲ್ಲಿ ಸೇರಿಸಲಾಗಿದೆ
if sys.version_info >= (3, 9):
print(f"'match' ಒಂದು ಸಾಫ್ಟ್ ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.issoftkeyword('match')}")
print(f"'case' ಒಂದು ಸಾಫ್ಟ್ ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.issoftkeyword('case')}")
print(f"'_' ಒಂದು ಸಾಫ್ಟ್ ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.issoftkeyword('_')}")
print(f"'if' ಒಂದು ಸಾಫ್ಟ್ ಕೀವರ್ಡ್ ಆಗಿದೆ: {keyword.issoftkeyword('if')}")
# ಆಧುನಿಕ ಪೈಥಾನ್ನಲ್ಲಿ (3.10+), ಸಾಫ್ಟ್ ಕೀವರ್ಡ್ಗಳು ಮುಖ್ಯ kwlist ನಲ್ಲಿಯೂ ಇರುತ್ತವೆ
print(f"\n'match' ಅನ್ನು iskeyword() ಮೂಲಕ ಕೀವರ್ಡ್ ಎಂದು ಪರಿಗಣಿಸಲಾಗಿದೆ: {keyword.iskeyword('match')}")
ಆಧುನಿಕ ಪೈಥಾನ್ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ನಿಖರವಾಗಿ ಪಾರ್ಸ್ ಮಾಡಲು ಅಗತ್ಯವಿರುವ ಪರಿಕರಗಳನ್ನು ನಿರ್ಮಿಸುವ ಡೆವಲಪರ್ಗಳಿಗೆ ಈ ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸವು ಮುಖ್ಯವಾಗಿದೆ. ಹೆಚ್ಚಿನ ದಿನನಿತ್ಯದ ಅಪ್ಲಿಕೇಶನ್ ಅಭಿವೃದ್ಧಿಗೆ, keyword.iskeyword()
ಸಾಕು, ಏಕೆಂದರೆ ಇದು ನೀವು ಗುರುತಿಸುವಿಕೆಗಳಾಗಿ ತಪ್ಪಿಸಬೇಕಾದ ಎಲ್ಲಾ ಪದಗಳನ್ನು ಸರಿಯಾಗಿ ಗುರುತಿಸುತ್ತದೆ.
ಪ್ರಾಯೋಗಿಕ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಮತ್ತು ಬಳಕೆಯ ಸಂದರ್ಭಗಳು
ಹಾಗಾದರೆ, ಡೆವಲಪರ್ ಏಕೆ ಪ್ರೋಗ್ರಾಮ್ಯಾಟಿಕ್ ಆಗಿ ಕೀವರ್ಡ್ಗಳಿಗಾಗಿ ಪರಿಶೀಲಿಸಬೇಕು? ವಿಶೇಷವಾಗಿ ಮಧ್ಯಂತರ ಮತ್ತು ಸುಧಾರಿತ ಡೊಮೇನ್ಗಳಲ್ಲಿ, ಅಪ್ಲಿಕೇಶನ್ಗಳು ನೀವು ಯೋಚಿಸುವುದಕ್ಕಿಂತ ಹೆಚ್ಚು ಸಾಮಾನ್ಯವಾಗಿದೆ.
1. ಡೈನಾಮಿಕ್ ಕೋಡ್ ಜನರೇಟ್ ಮತ್ತು ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್
ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ ಎಂದರೆ ಇತರ ಕೋಡ್ ಅನ್ನು ಬರೆಯುವ ಅಥವಾ ಕುಶಲತೆಯಿಂದ ನಿರ್ವಹಿಸುವ ಕೋಡ್ ಅನ್ನು ಬರೆಯುವ ಕಲೆ. ಇದು ಫ್ರೇಮ್ವರ್ಕ್ಗಳು, ಆಬ್ಜೆಕ್ಟ್-ರಿಲೇಶನಲ್ ಮ್ಯಾಪರ್ಗಳು (ORMs) ಮತ್ತು ಡೇಟಾ ವ್ಯಾಲಿಡೇಶನ್ ಲೈಬ್ರರಿಗಳಲ್ಲಿ (ಪೈಡಾಂಟಿಕ್ನಂತಹವು) ಸಾಮಾನ್ಯವಾಗಿದೆ.
ಸಂದರ್ಭ: ನೀವು ಡೇಟಾ ಮೂಲವನ್ನು (JSON ಸ್ಕೀಮಾ ಅಥವಾ ಡೇಟಾಬೇಸ್ ಟೇಬಲ್ನಂತಹ) ತೆಗೆದುಕೊಳ್ಳುವ ಮತ್ತು ಅದನ್ನು ಪ್ರತಿನಿಧಿಸಲು ಪೈಥಾನ್ ಕ್ಲಾಸ್ ಅನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಜನರೇಟ್ ಮಾಡುವ ಉಪಕರಣವನ್ನು ನಿರ್ಮಿಸುತ್ತಿದ್ದೀರಿ ಎಂದು ಊಹಿಸಿ. ಮೂಲದಿಂದ ಕೀಗಳು ಅಥವಾ ಕಾಲಮ್ ಹೆಸರುಗಳು ಕ್ಲಾಸ್ನ ಗುಣಲಕ್ಷಣಗಳಾಗುತ್ತವೆ.
ಸಮಸ್ಯೆ: ಡೇಟಾಬೇಸ್ ಕಾಲಮ್ಗೆ 'from'
ಎಂದು ಹೆಸರಿಸಿದ್ದರೆ ಅಥವಾ JSON ಕೀ 'class'
ಆಗಿದ್ದರೆ ಏನು? ನೀವು ಆ ಹೆಸರಿನೊಂದಿಗೆ ಒಂದು ಗುಣಲಕ್ಷಣವನ್ನು ಕುರುಡಾಗಿ ರಚಿಸಿದರೆ, ನೀವು ಅಮಾನ್ಯ ಪೈಥಾನ್ ಕೋಡ್ ಅನ್ನು ಜನರೇಟ್ ಮಾಡುತ್ತೀರಿ.
ಪರಿಹಾರ: ದ keyword
ಮಾಡ್ಯೂಲ್ ನಿಮ್ಮ ಸುರಕ್ಷತಾ ಜಾಲವಾಗಿದೆ. ಗುಣಲಕ್ಷಣವನ್ನು ಜನರೇಟ್ ಮಾಡುವ ಮೊದಲು, ಹೆಸರು ಕೀವರ್ಡ್ ಆಗಿದೆಯೇ ಎಂದು ನೀವು ಪರಿಶೀಲಿಸುತ್ತೀರಿ. ಹಾಗಿದ್ದರೆ, ನೀವು ಅದನ್ನು ಶುದ್ಧೀಕರಿಸಬಹುದು, ಉದಾಹರಣೆಗೆ, ಅಂಡರ್ಸ್ಕೋರ್ ಅನ್ನು ಸೇರಿಸುವ ಮೂಲಕ, ಪೈಥಾನ್ನಲ್ಲಿ ಸಾಮಾನ್ಯ ಸಂಪ್ರದಾಯವಾಗಿದೆ.
ಉದಾಹರಣೆ ಸ್ಯಾನಿಟೈಸರ್ ಕಾರ್ಯ:
import keyword
def sanitize_identifier(name):
"""ಒಂದು ಸ್ಟ್ರಿಂಗ್ ಮಾನ್ಯವಾದ ಪೈಥಾನ್ ಗುರುತಿಸುವಿಕೆ ಮತ್ತು ಕೀವರ್ಡ್ ಅಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತದೆ."""
if keyword.iskeyword(name):
return f"{name}_"
# ಸಂಪೂರ್ಣ ಅನುಷ್ಠಾನವು str.isidentifier() ಅನ್ನು ಸಹ ಪರಿಶೀಲಿಸುತ್ತದೆ
return name
# ಬಳಕೆಯ ಉದಾಹರಣೆ:
fields = ["name", "id", "from", "import", "data"]
print("ಕ್ಲಾಸ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಜನರೇಟ್ ಮಾಡುತ್ತಿದೆ...")
for field in fields:
sanitized_field = sanitize_identifier(field)
print(f" self.{sanitized_field} = ...")
ಔಟ್ಪುಟ್:
ಕ್ಲಾಸ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಜನರೇಟ್ ಮಾಡುತ್ತಿದೆ...
self.name = ...
self.id = ...
self.from_ = ...
self.import_ = ...
self.data = ...
ಈ ಸರಳ ಪರಿಶೀಲನೆಯು ಜನರೇಟ್ ಆದ ಕೋಡ್ನಲ್ಲಿ ವಿಪತ್ಕಾರಕ ಸಿಂಟ್ಯಾಕ್ಸ್ ದೋಷಗಳನ್ನು ತಡೆಯುತ್ತದೆ, ನಿಮ್ಮ ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ ಪರಿಕರಗಳನ್ನು ದೃಢ ಮತ್ತು ವಿಶ್ವಾಸಾರ್ಹವಾಗಿಸುತ್ತದೆ.
2. ಡೊಮೇನ್-ನಿರ್ದಿಷ್ಟ ಭಾಷೆಗಳನ್ನು (DSLs) ರಚಿಸುವುದು
ಡೊಮೇನ್-ನಿರ್ದಿಷ್ಟ ಭಾಷೆ (DSL) ಒಂದು ನಿರ್ದಿಷ್ಟ ಕಾರ್ಯಕ್ಕಾಗಿ ರಚಿಸಲಾದ ಒಂದು ಸಣ್ಣ ಭಾಷೆಯಾಗಿದ್ದು, ಇದನ್ನು ಹೆಚ್ಚಾಗಿ ಪೈಥಾನ್ನಂತಹ ಸಾಮಾನ್ಯ-ಉದ್ದೇಶದ ಭಾಷೆಯ ಮೇಲೆ ನಿರ್ಮಿಸಲಾಗುತ್ತದೆ. ಡೇಟಾಬೇಸ್ಗಳಿಗಾಗಿ `SQLAlchemy` ಅಥವಾ ಡೇಟಾ ವಿಶ್ಲೇಷಣೆಗಾಗಿ `Plotly` ನಂತಹ ಲೈಬ್ರರಿಗಳು ತಮ್ಮ ಡೊಮೇನ್ಗಳಿಗೆ ಪರಿಣಾಮಕಾರಿಯಾಗಿ DSL ಗಳನ್ನು ಒದಗಿಸುತ್ತವೆ.
DSL ಅನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸುವಾಗ, ನಿಮ್ಮದೇ ಆದ ಆಜ್ಞೆಗಳು ಮತ್ತು ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ನೀವು ವ್ಯಾಖ್ಯಾನಿಸಬೇಕಾಗುತ್ತದೆ. ದ keyword
ಮಾಡ್ಯೂಲ್ ನಿಮ್ಮ DSL ನ ಶಬ್ದಕೋಶವು ಪೈಥಾನ್ನ ಸ್ವಂತ ಕಾಯ್ದಿರಿಸಿದ ಪದಗಳೊಂದಿಗೆ ಸಂಘರ್ಷಿಸುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಅತ್ಯಗತ್ಯ. keyword.kwlist
ನ ವಿರುದ್ಧ ಪರಿಶೀಲಿಸುವ ಮೂಲಕ, ಅಸ್ಪಷ್ಟತೆ ಮತ್ತು ಸಂಭಾವ್ಯ ಪಾರ್ಸಿಂಗ್ ಸಂಘರ್ಷಗಳನ್ನು ತಪ್ಪಿಸಲು ನಿಮ್ಮ ವಿನ್ಯಾಸಕ್ಕೆ ಮಾರ್ಗದರ್ಶನ ನೀಡಬಹುದು.
3. ಶೈಕ್ಷಣಿಕ ಪರಿಕರಗಳು, ಲಿಂಟರ್ಗಳು ಮತ್ತು IDE ಗಳನ್ನು ನಿರ್ಮಿಸುವುದು
ಪೈಥಾನ್ ಅಭಿವೃದ್ಧಿ ಪರಿಕರಗಳ ಸಂಪೂರ್ಣ ಪರಿಸರ ವ್ಯವಸ್ಥೆಯು ಪೈಥಾನ್ನ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದರ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿದೆ.
- ಲಿಂಟರ್ಗಳು (ಉದಾ., Pylint, Flake8): ಈ ಪರಿಕರಗಳು ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ದೋಷಗಳು ಮತ್ತು ಶೈಲಿಯ ಸಮಸ್ಯೆಗಳಿಗಾಗಿ ಸ್ಥಿರವಾಗಿ ವಿಶ್ಲೇಷಿಸುತ್ತವೆ. ಕೀವರ್ಡ್ ಯಾವುದು ಮತ್ತು ಗುರುತಿಸುವಿಕೆ ಯಾವುದು ಎಂದು ತಿಳಿದುಕೊಳ್ಳುವುದು ಕೋಡ್ ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡುವ ಅವರ ಮೊದಲ ಹಂತವಾಗಿದೆ.
- IDEs (ಉದಾ., VS Code, PyCharm): ನಿಮ್ಮ ಎಡಿಟರ್ನ ಸಿಂಟ್ಯಾಕ್ಸ್ ಹೈಲೈಟಿಂಗ್ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಏಕೆಂದರೆ ಅದು ಕೀವರ್ಡ್ಗಳನ್ನು ವೇರಿಯಬಲ್ಗಳು, ಸ್ಟ್ರಿಂಗ್ಗಳು ಮತ್ತು ಕಾಮೆಂಟ್ಗಳಿಂದ ಪ್ರತ್ಯೇಕಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ. ಇದು
def
,if
, ಮತ್ತುreturn
ಅನ್ನು ವಿಭಿನ್ನವಾಗಿ ಬಣ್ಣ ಮಾಡುತ್ತದೆ ಏಕೆಂದರೆ ಅವು ಕೀವರ್ಡ್ಗಳೆಂದು ಅದಕ್ಕೆ ತಿಳಿದಿದೆ. ಈ ಜ್ಞಾನವುkeyword
ಮಾಡ್ಯೂಲ್ ಒದಗಿಸುವ ಪಟ್ಟಿಗೆ ಹೋಲುವ ಪಟ್ಟಿಯಿಂದ ಬರುತ್ತದೆ. - ಶೈಕ್ಷಣಿಕ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗಳು: ಇಂಟರ್ಯಾಕ್ಟಿವ್ ಕೋಡಿಂಗ್ ಟ್ಯುಟೋರಿಯಲ್ಗಳು ನೈಜ-ಸಮಯದ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಒದಗಿಸಬೇಕು. ವಿದ್ಯಾರ್ಥಿಯು
else
ಎಂಬ ವೇರಿಯಬಲ್ಗೆ ಹೆಸರಿಸಲು ಪ್ರಯತ್ನಿಸಿದಾಗ, ಪ್ಲಾಟ್ಫಾರ್ಮ್ ದೋಷವನ್ನು ಪತ್ತೆಹಚ್ಚಲುkeyword.iskeyword('else')
ಅನ್ನು ಬಳಸಬಹುದು ಮತ್ತು "'else' ಪೈಥಾನ್ನಲ್ಲಿ ಕಾಯ್ದಿರಿಸಿದ ಕೀವರ್ಡ್ ಆಗಿದೆ ಮತ್ತು ವೇರಿಯಬಲ್ ಹೆಸರಾಗಿ ಬಳಸಲಾಗುವುದಿಲ್ಲ" ಎಂಬಂತಹ ಸಹಾಯಕ ಸಂದೇಶವನ್ನು ಒದಗಿಸಬಹುದು.
4. ಗುರುತಿಸುವಿಕೆಗಳಿಗಾಗಿ ಬಳಕೆದಾರರ ಇನ್ಪುಟ್ ಅನ್ನು ಮೌಲ್ಯೀಕರಿಸುವುದು
ಕೆಲವು ಅಪ್ಲಿಕೇಶನ್ಗಳು ಬಳಕೆದಾರರಿಗೆ ನಂತರ ಪ್ರೋಗ್ರಾಮ್ಯಾಟಿಕ್ ಗುರುತಿಸುವಿಕೆಗಳಾಗಬಹುದಾದ ಘಟಕಗಳಿಗೆ ಹೆಸರಿಸಲು ಅನುಮತಿಸುತ್ತವೆ. ಉದಾಹರಣೆಗೆ, ಡೇಟಾ ಸೈನ್ಸ್ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಬಳಕೆದಾರರಿಗೆ ಡೇಟಾಸೆಟ್ನಲ್ಲಿ ಲೆಕ್ಕಹಾಕಿದ ಕಾಲಮ್ಗೆ ಹೆಸರಿಸಲು ಅವಕಾಶ ನೀಡಬಹುದು. ಈ ಹೆಸರನ್ನು ನಂತರ ಗುಣಲಕ್ಷಣ ಪ್ರವೇಶದ ಮೂಲಕ ಕಾಲಮ್ ಅನ್ನು ಪ್ರವೇಶಿಸಲು ಬಳಸಬಹುದು (ಉದಾ., dataframe.my_new_column
).
ಬಳಕೆದಾರರು 'yield'
ನಂತಹ ಹೆಸರನ್ನು ನಮೂದಿಸಿದರೆ, ಅದು ಬ್ಯಾಕೆಂಡ್ ಸಿಸ್ಟಮ್ ಅನ್ನು ಮುರಿಯಬಹುದು. ಇನ್ಪುಟ್ ಹಂತದಲ್ಲಿ keyword.iskeyword()
ಅನ್ನು ಬಳಸಿಕೊಂಡು ಸರಳ ಮೌಲ್ಯೀಕರಣ ಹಂತವು ಇದನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ತಡೆಯಬಹುದು, ಉತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವ ಮತ್ತು ಹೆಚ್ಚು ಸ್ಥಿರವಾದ ವ್ಯವಸ್ಥೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ.
ಉದಾಹರಣೆ ಇನ್ಪುಟ್ ವ್ಯಾಲಿಡೇಟರ್:
import keyword
def is_valid_column_name(name):
"""ಬಳಕೆದಾರರು ಒದಗಿಸಿದ ಹೆಸರು ಮಾನ್ಯವಾದ ಗುರುತಿಸುವಿಕೆ ಎಂದು ಪರಿಶೀಲಿಸುತ್ತದೆ."""
if not isinstance(name, str) or not name.isidentifier():
print(f"ದೋಷ: '{name}' ಮಾನ್ಯವಾದ ಗುರುತಿಸುವಿಕೆ ಸ್ವರೂಪವಲ್ಲ.")
return False
if keyword.iskeyword(name):
print(f"ದೋಷ: '{name}' ಕಾಯ್ದಿರಿಸಿದ ಪೈಥಾನ್ ಕೀವರ್ಡ್ ಆಗಿದೆ ಮತ್ತು ಅದನ್ನು ಬಳಸಲಾಗುವುದಿಲ್ಲ.")
return False
return True
print(is_valid_column_name("sales_total")) # True
print(is_valid_column_name("2023_sales")) # False (ಸಂಖ್ಯೆಯಿಂದ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ)
print(is_valid_column_name("for")) # False (ಕೀವರ್ಡ್ ಆಗಿದೆ)
ಪೈಥಾನ್ ಆವೃತ್ತಿಗಳಾದ್ಯಂತ ಕೀವರ್ಡ್ಗಳು: ವಿಕಸನದ ಬಗ್ಗೆ ಒಂದು ಟಿಪ್ಪಣಿ
ಪೈಥಾನ್ ಭಾಷೆ ಸ್ಥಿರವಾಗಿಲ್ಲ; ಅದು ವಿಕಸನಗೊಳ್ಳುತ್ತದೆ. ಹೊಸ ಆವೃತ್ತಿಗಳೊಂದಿಗೆ ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳು ಮತ್ತು ಕೆಲವೊಮ್ಮೆ ಹೊಸ ಕೀವರ್ಡ್ಗಳು ಬರುತ್ತವೆ. ದ keyword
ಮಾಡ್ಯೂಲ್ನ ಸೌಂದರ್ಯವೆಂದರೆ ಅದು ಭಾಷೆಯೊಂದಿಗೆ ವಿಕಸನಗೊಳ್ಳುತ್ತದೆ. ನೀವು ಪಡೆಯುವ ಕೀವರ್ಡ್ಗಳ ಪಟ್ಟಿಯು ನೀವು ಬಳಸುತ್ತಿರುವ ಇಂಟರ್ಪ್ರಿಟರ್ಗೆ ಯಾವಾಗಲೂ ನಿರ್ದಿಷ್ಟವಾಗಿರುತ್ತದೆ.
- ಪೈಥಾನ್ 2 ರಿಂದ 3: ಅತ್ಯಂತ ಪ್ರಸಿದ್ಧ ಬದಲಾವಣೆಗಳಲ್ಲಿ
print
ಮತ್ತುexec
ಕೂಡಾ ಒಂದು. ಪೈಥಾನ್ 2 ರಲ್ಲಿ, ಅವು ಸ್ಟೇಟ್ಮೆಂಟ್ಗಳಿಗೆ ಕೀವರ್ಡ್ಗಳಾಗಿದ್ದವು. ಪೈಥಾನ್ 3 ರಲ್ಲಿ, ಅವು ಬಿಲ್ಟ್-ಇನ್ ಕಾರ್ಯಗಳಾದವು, ಆದ್ದರಿಂದ ಅವುಗಳನ್ನುkeyword.kwlist
ನಿಂದ ತೆಗೆದುಹಾಕಲಾಯಿತು. - ಪೈಥಾನ್ 3.5+: ಅಸಮಕಾಲಿಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್ನ ಪರಿಚಯವು
async
ಮತ್ತುawait
ಅನ್ನು ತಂದಿತು. ಆರಂಭದಲ್ಲಿ, ಅವು ಸಂದರ್ಭ-ಸಂವೇದಿಯಾಗಿತ್ತು, ಆದರೆ ಪೈಥಾನ್ 3.7 ರಲ್ಲಿ, ಅವು ಸರಿಯಾದ (ಕಠಿಣ) ಕೀವರ್ಡ್ಗಳಾದವು. - ಪೈಥಾನ್ 3.10: ರಚನಾತ್ಮಕ ಪ್ಯಾಟರ್ನ್ ಮ್ಯಾಚಿಂಗ್ ವೈಶಿಷ್ಟ್ಯವು
match
ಮತ್ತುcase
ಅನ್ನು ಸಂದರ್ಭ-ಸಂವೇದಿ ಕೀವರ್ಡ್ಗಳಾಗಿ ಸೇರಿಸಿತು.
ಇದರರ್ಥ keyword
ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಅವಲಂಬಿಸಿರುವ ಕೋಡ್ ಅಂತರ್ಗತವಾಗಿ ಪೋರ್ಟಬಲ್ ಮತ್ತು ಫಾರ್ವರ್ಡ್-ಹೊಂದಾಣಿಕೆಯಾಗಿದೆ. ಪೈಥಾನ್ 3.11 ರಲ್ಲಿ ಬರೆದ ಕೋಡ್ ಜನರೇಟರ್ match
ಅನ್ನು ತಪ್ಪಿಸಲು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ತಿಳಿಯುತ್ತದೆ, ಇದು ಪೈಥಾನ್ 3.8 ನಲ್ಲಿ ರನ್ ಆಗುತ್ತಿದ್ದರೆ ತಿಳಿದಿರುತ್ತಿರಲಿಲ್ಲ. ಈ ಡೈನಾಮಿಕ್ ಸ್ವರೂಪವು ಮಾಡ್ಯೂಲ್ನ ಅತ್ಯಂತ ಶಕ್ತಿಶಾಲಿ, ಇನ್ನೂ ಕಡಿಮೆ ಅಂದಾಜು ಮಾಡಿದ ವೈಶಿಷ್ಟ್ಯಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ.
ಉತ್ತಮ ಅಭ್ಯಾಸಗಳು ಮತ್ತು ಸಾಮಾನ್ಯ ತಪ್ಪುಗಳು
ದ keyword
ಮಾಡ್ಯೂಲ್ ಸರಳವಾಗಿದ್ದರೂ, ಅನುಸರಿಸಬೇಕಾದ ಕೆಲವು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳು ಮತ್ತು ತಪ್ಪಿಸಬೇಕಾದ ತಪ್ಪುಗಳು ಇವೆ.
ಮಾಡಿ: ಮೌಲ್ಯೀಕರಣಕ್ಕಾಗಿ `keyword.iskeyword()` ಅನ್ನು ಬಳಸಿ
ಪ್ರೋಗ್ರಾಮ್ಯಾಟಿಕ್ ಗುರುತಿಸುವಿಕೆ ರಚನೆ ಅಥವಾ ಮೌಲ್ಯೀಕರಣವನ್ನು ಒಳಗೊಂಡಿರುವ ಯಾವುದೇ ಸನ್ನಿವೇಶದಲ್ಲಿ, ಈ ಕಾರ್ಯವು ನಿಮ್ಮ ಮೌಲ್ಯೀಕರಣ ತರ್ಕದ ಭಾಗವಾಗಿರಬೇಕು. ಇದು ವೇಗವಾಗಿದೆ, ನಿಖರವಾಗಿದೆ ಮತ್ತು ಈ ಪರಿಶೀಲನೆಯನ್ನು ನಿರ್ವಹಿಸಲು ಅತ್ಯಂತ ಪೈಥಾನಿಕ್ ಮಾರ್ಗವಾಗಿದೆ.
ಮಾಡಬೇಡಿ: `keyword.kwlist` ಅನ್ನು ಮಾರ್ಪಡಿಸಬೇಡಿ
keyword.kwlist
ಒಂದು ಸಾಮಾನ್ಯ ಪೈಥಾನ್ ಪಟ್ಟಿ, ಅಂದರೆ ನೀವು ತಾಂತ್ರಿಕವಾಗಿ ರನ್ಟೈಮ್ನಲ್ಲಿ ಅದನ್ನು ಮಾರ್ಪಡಿಸಬಹುದು (ಉದಾ., keyword.kwlist.append("my_keyword")
). ಇದನ್ನು ಎಂದಿಗೂ ಮಾಡಬೇಡಿ. ಪಟ್ಟಿಯನ್ನು ಮಾರ್ಪಡಿಸುವುದರಿಂದ ಪೈಥಾನ್ ಪಾರ್ಸರ್ ಮೇಲೆ ಯಾವುದೇ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ. ಕೀವರ್ಡ್ಗಳ ಬಗ್ಗೆ ಪಾರ್ಸರ್ನ ಜ್ಞಾನವು ಹಾರ್ಡ್-ಕೋಡ್ ಮಾಡಲ್ಪಟ್ಟಿದೆ. ಪಟ್ಟಿಯನ್ನು ಬದಲಾಯಿಸುವುದರಿಂದ ನಿಮ್ಮ keyword
ಮಾಡ್ಯೂಲ್ನ ನಿದರ್ಶನವು ಭಾಷೆಯ ನಿಜವಾದ ಸಿಂಟ್ಯಾಕ್ಸ್ನೊಂದಿಗೆ ಅಸಮಂಜಸವಾಗುತ್ತದೆ, ಇದು ಗೊಂದಲಮಯ ಮತ್ತು ಅನಿರೀಕ್ಷಿತ ದೋಷಗಳಿಗೆ ಕಾರಣವಾಗುತ್ತದೆ. ಮಾಡ್ಯೂಲ್ ಪರಿಶೀಲನೆಗಾಗಿ, ಮಾರ್ಪಾಡಿಗಾಗಿ ಅಲ್ಲ.
ಮಾಡಿ: ಕೇಸ್ ಸೆನ್ಸಿಟಿವಿಟಿ ನೆನಪಿಡಿ
ಕೀವರ್ಡ್ಗಳು ಕೇಸ್-ಸೆನ್ಸಿಟಿವ್ ಆಗಿರುತ್ತವೆ ಎಂಬುದನ್ನು ಯಾವಾಗಲೂ ನೆನಪಿಡಿ. ಬಳಕೆದಾರರ ಇನ್ಪುಟ್ ಅನ್ನು ಮೌಲ್ಯೀಕರಿಸುವಾಗ, iskeyword()
ನೊಂದಿಗೆ ಪರಿಶೀಲಿಸುವ ಮೊದಲು ಯಾವುದೇ ಕೇಸ್-ಫೋಲ್ಡಿಂಗ್ (ಉದಾ., ಲೋವರ್ಕೇಸ್ಗೆ ಪರಿವರ್ತಿಸುವುದು) ಮಾಡುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ, ಏಕೆಂದರೆ ಅದು 'True'
, 'False'
, ಮತ್ತು 'None'
ಗೆ ತಪ್ಪಾದ ಫಲಿತಾಂಶವನ್ನು ನೀಡುತ್ತದೆ.
ಮಾಡಬೇಡಿ: ಕೀವರ್ಡ್ಗಳನ್ನು ಬಿಲ್ಟ್-ಇನ್ಗಳೊಂದಿಗೆ ಗೊಂದಲಗೊಳಿಸಬೇಡಿ
list
ಅಥವಾ str
ನಂತಹ ಬಿಲ್ಟ್-ಇನ್ ಫಂಕ್ಷನ್ ಹೆಸರುಗಳನ್ನು ಛಾಯೆಗೊಳಿಸುವುದು ಕೆಟ್ಟ ಅಭ್ಯಾಸವಾಗಿದ್ದರೂ, ದ keyword
ಮಾಡ್ಯೂಲ್ ಇದನ್ನು ಪತ್ತೆಹಚ್ಚಲು ನಿಮಗೆ ಸಹಾಯ ಮಾಡುವುದಿಲ್ಲ. ಅದು ಬೇರೆ ವರ್ಗದ ಸಮಸ್ಯೆಯಾಗಿದ್ದು, ಸಾಮಾನ್ಯವಾಗಿ ಲಿಂಟರ್ಗಳಿಂದ ನಿರ್ವಹಿಸಲ್ಪಡುತ್ತದೆ. ದ keyword
ಮಾಡ್ಯೂಲ್ SyntaxError
ಅನ್ನು ಉಂಟುಮಾಡುವ ಕಾಯ್ದಿರಿಸಿದ ಪದಗಳಿಗಾಗಿ ಪ್ರತ್ಯೇಕವಾಗಿ ಉದ್ದೇಶಿಸಲಾಗಿದೆ.
ತೀರ್ಮಾನ: ಪೈಥಾನ್ನ ಬಿಲ್ಡಿಂಗ್ ಬ್ಲಾಕ್ಗಳನ್ನು ಕರಗತ ಮಾಡಿಕೊಳ್ಳುವುದು
ದ keyword
ಮಾಡ್ಯೂಲ್ `asyncio` ನಂತೆ ಆಕರ್ಷಕವಾಗಿ ಅಥವಾ `multiprocessing` ನಂತೆ ಸಂಕೀರ್ಣವಾಗಿಲ್ಲದಿರಬಹುದು, ಆದರೆ ಇದು ಯಾವುದೇ ಗಂಭೀರ ಪೈಥಾನ್ ಡೆವಲಪರ್ಗೆ ಮೂಲಭೂತ ಸಾಧನವಾಗಿದೆ. ಇದು ಪೈಥಾನ್ನ ಸಿಂಟ್ಯಾಕ್ಸ್ನ ಮೂಲಭೂತ ಭಾಗಕ್ಕೆ – ಅದರ ಕಾಯ್ದಿರಿಸಿದ ಪದಗಳಿಗೆ – ಸ್ವಚ್ಛ, ವಿಶ್ವಾಸಾರ್ಹ ಮತ್ತು ಆವೃತ್ತಿ-ಅರಿವಿನ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಒದಗಿಸುತ್ತದೆ.
keyword.kwlist
ಮತ್ತು keyword.iskeyword()
ಅನ್ನು ಕರಗತ ಮಾಡಿಕೊಳ್ಳುವ ಮೂಲಕ, ನೀವು ಹೆಚ್ಚು ದೃಢವಾದ, ಬುದ್ಧಿವಂತ ಮತ್ತು ದೋಷ-ರಹಿತ ಕೋಡ್ ಬರೆಯುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಅನ್ಲಾಕ್ ಮಾಡುತ್ತೀರಿ. ನೀವು ಶಕ್ತಿಶಾಲಿ ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ ಪರಿಕರಗಳನ್ನು ನಿರ್ಮಿಸಬಹುದು, ಸುರಕ್ಷಿತ ಬಳಕೆದಾರ-ಎದುರಿಸುವ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ರಚಿಸಬಹುದು ಮತ್ತು ಪೈಥಾನ್ ಭಾಷೆಯ ಸೊಗಸಾದ ರಚನೆಯ ಬಗ್ಗೆ ಆಳವಾದ ಮೆಚ್ಚುಗೆಯನ್ನು ಪಡೆಯಬಹುದು. ಮುಂದಿನ ಬಾರಿ ನೀವು ಗುರುತಿಸುವಿಕೆಯನ್ನು ಮೌಲ್ಯೀಕರಿಸಲು ಅಥವಾ ಕೋಡ್ ತುಂಡನ್ನು ಜನರೇಟ್ ಮಾಡಲು ಅಗತ್ಯವಿದ್ದಾಗ, ಯಾವ ಉಪಕರಣವನ್ನು ಬಳಸಬೇಕೆಂದು ನಿಮಗೆ ನಿಖರವಾಗಿ ತಿಳಿಯುತ್ತದೆ, ಇದು ಪೈಥಾನ್ನ ಬಲವಾದ ಅಡಿಪಾಯಗಳ ಮೇಲೆ ವಿಶ್ವಾಸದಿಂದ ನಿರ್ಮಿಸಲು ನಿಮಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.